//#pragma once
//#include "ObjectPool.h"
//#include"ConCurrentAlloc.h"
//
//void TestConCurrentAlloc()
//{
//	void* p1 = ConcurrentAlloc(1);
//	void* p2 = ConcurrentAlloc(3);
//	void* p3 = ConcurrentAlloc(5);
//	void* p4 = ConcurrentAlloc(8);
//	void* p5 = ConcurrentAlloc(4);
//	void* p6 = ConcurrentAlloc(8);
//	void* p7 = ConcurrentAlloc(4);
//
//	ConcurrentFree(p1);
//	ConcurrentFree(p2);
//	ConcurrentFree(p3);
//	ConcurrentFree(p4);
//	ConcurrentFree(p5);
//	ConcurrentFree(p6);
//	ConcurrentFree(p7);
//}
//
//void TestThread1()
//{
//	std::vector<void*> v;
//	for (int i = 0; i < 7; i++)
//	{
//		void* p1 = ConcurrentAlloc(8);
//		v.push_back(p1);
//	}
//
//	for (auto t : v)
//	{
//		ConcurrentFree(t);
//	}
//}
//
//void TestThread2()
//{
//	std::vector<void*> v;
//	for (int i = 0; i < 7; i++)
//	{
//		void* p1 = ConcurrentAlloc(8);
//		v.push_back(p1);
//	}
//
//	for (auto t : v)
//	{
//		ConcurrentFree(t);
//	}
//}
//
//
//void TestCurrentAlloc()
//{
//	//std::thread t1(TestThread1);
//	std::thread t2(TestThread2);
//
//	//t1.join();
//	t2.join();
//}
//
//int main()
//{
//	//TestObjectPool();
//	//TestConCurrentAlloc();
//	TestCurrentAlloc();
//	return 0;
//}